package com.kingint.mbg.ser.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 相关工单总表
 * </p>
 *
 * @author wxh
 * @since 2021-01-08
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="SerWorkOrder对象", description="相关工单总表")
public class SerWorkOrder implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty(value = "对应酒店id")
    @TableField("hotel_id")
    private Integer hotelId;

    @ApiModelProperty(value = "消息id(小度使用）")
    @TableField("message_id")
    private Long messageId;

    @ApiModelProperty(value = "对应房间表的房间id")
    @TableField("room_id")
    private Integer roomId;

    @ApiModelProperty(value = "房间号（对应小度的devicePosName字段）")
    @TableField("room_num")
    private String roomNum;

    @ApiModelProperty(value = "提交人员id,0，表示小度下发的客需,系统下发")
    @TableField("submit_user_id")
    private Long submitUserId;

    /**
     * 提交人员名称
     */
    @TableField(exist = false)
    private String submitUserName;

    @ApiModelProperty("回复状态")
    @TableField(exist = false)
    private Integer reply;


    @ApiModelProperty(value = "对应工单类型表id")
    @TableField("work_type_id")
    private Integer workTypeId;

    @TableField(exist = false)
    private String workTypeName;

    @ApiModelProperty(value = "工单号")
    @TableField("order_sn")
    private String orderSn;

    @ApiModelProperty(value = "客人名字，如对接了pms时使用")
    @TableField("gust")
    private String gust;

    @ApiModelProperty(value = "客房状态（赶房中房态相关，1，未退房，2，已退房等等，对接pms可用）默认为0，未对接pms")
    @TableField("guest_room_status")
    private Integer guestRoomStatus;

    @ApiModelProperty(value = "创建时间")
    @TableField("create_time")
    private Date createTime;

    @ApiModelProperty(value = "更新时间")
    @TableField("update_time")
    private Date updateTime;

    @ApiModelProperty("开始时间(工单处理开始时间）")
    @TableField("start_time")
    private Date startTime;

    @ApiModelProperty(value = "结束时间")
    @TableField("end_time")
    private Date endTime;

    @ApiModelProperty(value = "完成相关备注")
    @TableField("reply_message")
    private String replyMessage;

    @ApiModelProperty(value = "工单状态定义（0，普通，1紧急）")
    @TableField("work_order_status")
    private Integer workOrderStatus;

    @ApiModelProperty(value = "流程实例id")
    @TableField("process_instance_id")
    private String processInstanceId;

    @ApiModelProperty(value = "相应工单状态（1,未指派(未接单)，2,处理中，3，待验收，4.挂起，5，完成，6，待确认（服务工单人员确认））")
    @TableField("order_status")
    private Integer orderStatus;

    @ApiModelProperty(value = "状态（0，正常，1，删除）")
    @TableField("status")
    private Integer status;


}
